package me.firstapp.spi.shop;

import java.util.Map;

import me.firstapp.common.json.ListObject;
import me.firstapp.common.json.PageObject;
import me.firstapp.common.json.SingleObject;
import me.firstapp.common.module.shop.JsonCategory;

public interface CategoryService {

	/**
	 * 调用查询评论列表接口
	 * 
	 * @return
	 */
	ListObject<JsonCategory> findCategoryList();

	/**
	 * 调用分页查询品类接口
	 * 
	 * @param pageNo
	 * @param pageSize
	 * @param searchParams
	 * @param sortParam
	 * @param sortType
	 * @return
	 */
	PageObject<JsonCategory> findCategoryPage(Integer pageNo, Integer pageSize, Map<String, Object> searchParams,
			String sortParam, String sortType);

	/**
	 * 调用通过id查询品类接口
	 * 
	 * @param categoryId
	 * @return
	 */
	SingleObject<JsonCategory> findCategoryById(Long categoryId);

	/**
	 * 调用新增品类接口
	 * 
	 * @param name
	 * @param description
	 * @param sort
	 * @return
	 */
	SingleObject<JsonCategory> addCategory(String name, String description, Integer sort);

	/**
	 * 调用更新品类接口
	 * 
	 * @param categoryId
	 * @param name
	 * @param description
	 * @param sort
	 * @return
	 */
	SingleObject<JsonCategory> updateCategory(Long categoryId, String name, String description, Integer sort);

	/**
	 * 调用删除品类接口
	 * 
	 * @param ids
	 * @return
	 */
	SingleObject<Object> deleteCategorys(String ids);

	/**
	 * 调用更新品类缓存接口
	 * 
	 * @return
	 */
	SingleObject<Object> updateCategoryCache();
}
